$(document).ready(function() {
	
	//transforma o formulário em um wizard
	var wizardObj = wizardUpdate($("form").attr("id"),"instituicaoensinoes",false);
	//criando os editores de texto
    $('textarea').wysiwyg();
	
	//mascaras
	$("#cep").mask("99.999-999", {placeholder:"_"});
	$("#telefoneInstituicao").mask("(99) 9999-9999", {placeholder:"_"});
	$("#dataPosseResponsavel").mask("99/99/9999", {placeholder:"_"});
	$("#telefoneResponsavel").mask("(99) 9999-9999", {placeholder:"_"});
	$("#telefoneSessao").mask("(99) 9999-9999", {placeholder:"_"});
	$("#faxSessao").mask("(99) 9999-9999", {placeholder:"_"});
	
	//carrega os combo box
	loadToComboBox("#estado",estadoDataSource,"uf");
	
	//datepickers
	datePicker("dataPosseResponsavelI");
	$( "#dataPosseResponsavelI" ).datepicker( "option", "dateFormat", "dd/m/yy");
	
	//define as colunas do um para muitos
	//Metodologias
	var atividadesDesempenhadasAoColumns = [
                                        	{"sTitle": "Id", "mDataProp": "id", "sWidth": "100px", "bVisible": false, "sDefaultContent":""},
											{"sTitle": "Ramo da SSP", "mDataProp": "ramoSegurancaPublica.nome", "sWidth": "100px", "bVisible": true, "sDefaultContent":""},
											{"sTitle": "Atividade", "mDataProp": "nome", "sWidth": "100px", "bVisible": true, "sDefaultContent":""}
										];
	oneToMany("dataGridAtividadesDesempenhadas", JSON.stringify(atividadesDesempenhadasAoColumns));
	$("#adicionarAtividadesDesempenhadasBtn").button({icons: {primary: "ui-icon-plusthick"}, text: false}).click(
	function(){
		adicionarDoComboParaDatagrid("atividades", "dataGridAtividadesDesempenhadas");
		return false;
	});
	
});

function calcularMesesPosse(){
	dataAtual = new Date();
	dataBase = $("#dataPosseResponsavelI").val();
	dataBase = dataBase.split('/');
	dataCorr = dataBase[1]+"/"+dataBase[0]+"/"+dataBase[2];
	$("#tempoUnidadeI").val(parseInt(diferencaEntreDias(dataCorr, dataAtual)/30));	
}

function popular(){
    var registro = $("#"+$("form").attr("id")).formParams(false);
	var myDate = new Date();
	var displayDate = (myDate.getMonth()+1) + '/' + (myDate.getDate()) + '/' + myDate.getFullYear();    
    
//	//oneToMany metodologias
	delete registro.atividades;
	registro.atividadesDesempenhadas = serializarDataGrid("dataGridAtividadesDesempenhadas");
    
	$("select").each(function(){
		try{ 
			eval("registro."+$(this).attr("id")+" = findDataId(registro."+$(this).attr("id")+".id, $(\"#"+$(this).attr("id")+"\").get(0).dataSource);");
		}catch(e){}
	});

	
	if($("input[@name=responsavelSessaoGraduadoPedagogia]:checked").val() == 'on'){
		
		registro.responsavelSessaoGraduadoPedagogia = true;
	}else{
		registro.responsavelSessaoGraduadoPedagogia = false;
	}
	
	//combos
	if($("#biblioteca").val() == 'true'){
		registro.biblioteca = true;
	}else{
		registro.biblioteca = false;
	}
	
	if($("#refeitorio").val() == 'true'){
		registro.refeitorio = true;
	}else{
		registro.refeitorio = false;
	}
	
	if($("#laboratorioInformatica").val() == 'true'){
		registro.laboratorioInformatica = true;
	}else{
		registro.laboratorioInformatica = false;
	}
	
	if($("#ginasio").val() == 'true'){
		registro.ginasio = true;
	}else{
		registro.ginasio = false;
	}	
	
	if($("#espacoTreinamentoFisico").val() == 'true'){
		registro.espacoTreinamentoFisico = true;
	}else{
		registro.espacoTreinamentoFisico = false;
	}
	
	if($("#piscina").val() == 'true'){
		registro.piscina = true;
	}else{
		registro.piscina = false;
	}

	if($("#estandeTiro").val() == 'true'){
		registro.estandeTiro = true;
	}else{
		registro.estandeTiro = false;
	}
	
	if($("#simuladorTiro").val() == 'true'){
		registro.simuladorTiro = true;
	}else{
		registro.simuladorTiro = false;
	}
	
	if($("#alojamentoColetivo").val() == 'true'){
		registro.alojamentoColetivo = true;
	}else{
		registro.alojamentoColetivo = false;
	}
	
	if($("#alojamentoIndividual").val() == 'true'){
		registro.alojamentoIndividual = true;
	}else{
		registro.alojamentoIndividual = false;
	}
	
	if($("#treinamentoOperacional").val() == 'true'){
		registro.treinamentoOperacional = true;
	}else{
		registro.treinamentoOperacional = false;
	}
	
	if($("#possibilidadeUsoViatura").val() == 'true'){
		registro.possibilidadeUsoViatura = true;
	}else{
		registro.possibilidadeUsoViatura = false;
	}
	
	if($("#treinamentoDefesaPessoal").val() == 'true'){
		registro.treinamentoDefesaPessoal = true;
	}else{
		registro.treinamentoDefesaPessoal = false;
	}
	
	//inputs que não pode ficar vazios. converter para 0
	if($("#capacidadeMaximaAlunos").val() == '') registro.capacidadeMaximaAlunos = '0';
	if($("#numeroSalas").val() == '') registro.numeroSalas = '0';
	if($("#capacidadeMediaSala").val() == '') registro.capacidadeMediaSala = '0';
	if($("#numeroAuditorios").val() == '') registro.numeroAuditorios = '0';	
	if($("#capacidadeAuditorio").val() == '') registro.capacidadeAuditorio = '0';	
	if($("#capacidadeRefeitorio").val() == '') registro.capacidadeRefeitorio = '0';	
	if($("#capacidadeLaboratorioInformatica").val() == '') registro.capacidadeLaboratorioInformatica = '0';
	if($("#quantidadeRaiasPiscina").val() == '') registro.quantidadeRaiasPiscina = '0';	
	if($("#capacidadeEstandeTiro").val() == '') registro.capacidadeEstandeTiro = '0';	
	if($("#distanciaMetroEstandeTiro").val() == '') registro.distanciaMetroEstandeTiro = '0';	
	if($("#capacidadeAlojamentoColetivo").val() == '') registro.capacidadeAlojamentoColetivo = '0';
	if($("#capacidadeAlojamentoIndividual").val() == '') registro.capacidadeAlojamentoIndividual = '0';	
	if($("#mediaAlunosAtividade").val() == '') registro.mediaAlunosAtividade = '0';	
	if($("#capacidadeMetroTreinamentoOperacional").val() == '') registro.capacidadeMetroTreinamentoOperacional = '0';	
	if($("#capacidadeDefesaPessoalMetros").val() == '') registro.capacidadeDefesaPessoalMetros = '0';	
	//calcular o tempo de serviço
	//if($("#dataPosseResponsavelI").val()!='')
	return registro;
}

function preencherFormulario(data){
	
	//oneToMany
	var atividadesDesempenhadas = data.atividadesDesempenhadas;
	delete data.atividadesDesempenhadas;	
	
	
	loadToComboBoxCallBack("#municipio","municipios/combo/nome?class=br.com.educa.modelo.publico.Municipio&methodName=findMunicipiosByEstado&estado="+data.municipio.estado.id,'nome',function(){$("#municipio").val(data.municipio.id);});
	loadToComboBox("#ramoSegurancaPublica",ramoSegurancaPublicaDataSource,"nome");
	$("#ramoSegurancaPublica").val(data.ramoSegurancaPublica.id);
	loadToComboBoxCallBack("#responsavelInstituicao","pessoas/combo/nome?class=br.com.educa.modelo.pessoa.Pessoa&methodName=findPessoasByTipoCadastroPessoa&tipoCadastroPessoa=Sigen",'nome',function(){$("#responsavelInstituicao").val(data.responsavelInstituicao.id);});
	loadToComboBoxCallBack("#responsavelSessao","pessoas/combo/nome?class=br.com.educa.modelo.pessoa.Pessoa&methodName=findPessoasByTipoCadastroPessoa&tipoCadastroPessoa=Sigen",'nome',function(){$("#responsavelSessao").val(data.responsavelSessao.id);});
	$("#estado").change(function(event){ loadToSubcombo(event,'#municipio','municipios/combo/nome?class=br.com.educa.modelo.publico.Municipio&methodName=findMunicipiosByEstado&estado=','nome'); });
	loadToComboBox("#ramoSegurancaPublicaAtividades",ramoSegurancaPublicaDataSource,"nome");
	$("#ramoSegurancaPublicaAtividades").change(function(event){ loadToSubcombo(event,'#atividades','atividadesdesempenhadases/combo/nome?class=br.com.educa.modelo.instituicao.AtividadesDesempenhadas&methodName=findAtividadesDesempenhadasesByRamoSegurancaPublica&ramoSegurancaPublica=','nome'); });

	//dataGrid
	$("#dataGridAtividadesDesempenhadas").dataTable().fnAddData(atividadesDesempenhadas);

	
	//form
	$("#"+$("form").attr("id")).populate( data,{resetForm:true});

	
	$("#estado").val(data.municipio.estado.id);
	//checkbox
	if(data.responsavelSessaoGraduadoPedagogia) $("#responsavelSessaoGraduadoPedagogia").attr('checked', true); else $("#responsavelSessaoGraduadoPedagogia").attr('checked', false);
	
}